load
Purpose
Returns a proxy instance of the domain class for the given identifier.
Examples
// load a single instance def b = Book.load(1) String title = b.title ...// delete an instance without retrieving it Book.load(1).delete()
Description
load
usually returns a proxy for the instance which is initialized on-demand, when a method other than getId()
is invoked. load()
only returns null
if the provided id is null
, so you cannot use it to test for existence. If you provide an id for an instance that doesn't exist, a proxy will be returned and an exception will be thrown only when you call any instance method other than getId()
.
If there is an existing instance with the same id in the Hibernate session or 2nd-level cache, load() will return that non-proxy instance instead of a proxy.
Parameters:
id
- The id of the object to retrieve